package com.expert.miniapp.service;

import org.springframework.web.multipart.MultipartFile;

/**
 * OSSService - 阿里云OSS服务接口
 * 用于文件上传到OSS
 *
 * @author System
 * @since 2025-01-14
 */
public interface OSSService {

    /**
     * 上传用户头像到OSS
     *
     * @param file 上传的文件
     * @param userId 用户ID（用于生成文件路径）
     * @return 文件的完整访问URL
     * @throws Exception 上传失败时抛出异常
     */
    String uploadAvatar(MultipartFile file, String userId) throws Exception;

    /**
     * 删除OSS上的文件
     *
     * @param fileUrl 文件URL
     * @throws Exception 删除失败时抛出异常
     */
    void deleteFile(String fileUrl) throws Exception;
}
